package net.towee.client.com.repo;

import net.towee.client.com.app.Presenter;
import net.towee.model.group.GroupIdentity;
import net.towee.model.repo.NodeData;

import com.google.gwt.event.logical.shared.HasSelectionHandlers;

public interface RepositoryNodeSelector extends Presenter, HasSelectionHandlers< NodeData > {
	/**
	 * Set current node in selector. Make the effect only by invoking before go
	 * method.
	 * 
	 * @param nodeId
	 */
	void setCurrentNode(NodeData nodeId);

	/**
	 * @return selected node or null if node not selected yet.
	 */
	NodeData getSelectedNode();

	/**
	 * @return GroupIdentity of group when located selected node or null if node
	 *         not selected
	 */
	GroupIdentity getGroupIdentity();
}
